import pandas as pd

# 函数文件读入数据框架
df = pd.read_csv("D:/python/Lab1/all.csv")

# 设置输出所有列
pd.set_option('display.max_columns', 1000)
# 设置输出所有列保持在同一行
pd.set_option('display.width', 10000)
# 设置输出右对齐
pd.set_option('display.unicode.east_asian_width', True)

# 处理时间的数据,时间戳转换为时间
df.审判时间 = pd.to_datetime(df.审判时间)
df.publish_time = pd.to_datetime(df.publish_time)

# 查看特征
# df.info()

# 丢弃缺失值
# df = df.dropna()

# 数据保存，index表示是否显示行名，sep数据分开符
# df.to_csv('save1.csv', index=False, sep=',')

# 数据加载
# df1 = pd.read_csv('save1.csv')

# 去除重复行的数据
# df1 = df1.drop_duplicates(keep=False)

# 数据保存，index表示是否显示行名，sep数据分开符
# df1.to_csv('save2.csv', index=False, sep=',')

# 数据加载
# df2 = pd.read_csv('save2.csv', low_memory=False)

# 以level列分组
# groups属性返回一个字典，包含所有分组子数据帧与索引值
# df2 = df2.groupby("level").groups

# 查看各level的元素个数
# df2 = df2.groupby("level").size()

# df2 = df2.groupby("level").count()

# 以审判轮次列分组
# groups属性返回一个字典，包含所有分组子数据帧与索引值
# df2 = df2.groupby("审判轮次").groups

# 查看各审判轮次的元素个数
# df2 = df2.groupby("审判轮次").size()

# location_str = df.法院名称
# df = cpca.transform(location_str, pos_sensitive=True)
# print(df)
df = pd.read_csv("D:/python/Lab1/all.csv")
# 筛选包含“广东”的列表
df = df[df['法院名称'].str.contains('广东') | df['wbsb'].str.contains('广东')]
print(df)

# 数据保存，index表示是否显示行名，sep数据分开符
# df.to_csv('cpca.csv', index=False, sep=',')

# 读取文件
# df1 = pd.read_csv("D:/python/Lab1/cpca.csv")
# df2 = pd.read_csv("D:/python/Lab1/save2.csv")
# 列拼接,默认是并集
# df = pd.concat([df1, df2], axis=1)
# 保存合并后的文件
# df.to_csv('all.csv', index=False)
# print(df)

# from cpca import drawer
# location_str = df.法院名称
# df = cpca.transform(location_str)
# drawer.draw_locations(df[cpca._ADCODE], "df.html")

# df = pd.read_csv("D:/python/Lab1/A.csv")
# 查看各案件原因的元素个数
# df = df.groupby("案件原因").size()
# print(df)

# df.drop(['法院名称'], axis=1, inplace=True)
# 输出csv不带自动添加的行和列的序号
# df.to_csv('A.csv', index=None)
# 丢弃缺失值
# df = df.dropna()
# df.to_csv('total.csv', index=None)
# df = pd.read_csv("D:/python/Lab1/total.csv")
# df.drop(['文书标题'], axis=1, inplace=True)
# 输出csv不带自动添加的行和列的序号
# df.to_csv('total1.csv', index=None)


# 生成时间差
# df = pd.read_csv("D:/python/Lab1/total1.csv")
# df['start_time'] = pd.to_datetime(df['审判时间'])
# df['end_time'] = pd.to_datetime(df['publish_time'])
# df['solved_duration'] = df['end_time']-df['start_time']
# df.to_csv('time.csv', index=False)

df = pd.read_csv("D:/python/Lab1/time.csv")
# 删除“审判时间”和“publish_time”两列
df.drop(['审判时间'], axis=1, inplace=True)
df.drop(['publish_time'], axis=1, inplace=True)
# 输出csv不带自动添加的行和列的序号
df.to_csv('Last.csv', index=False)
